package cn.school.course.entity;

import cn.school.common.utils.SysUserUtils;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * @Description 课程-冲突情况
 * @Author fangjin.tao
 * @Date 2023-01-04
 */

@TableName("t_course_conflict")
@Data
public class CourseConflict implements Serializable {
	
	
	private static final long serialVersionUID = -3974085473091346500L;
	private Long id;
	
	/**
	 * 老师组合唯一键
	 */
	private String cpcoTeacherKey;
	
	/**
	 * 场地空间组合唯一键
	 */
	private String cpcoRoomKey;
	
	/**
	 * 排课计划ID
	 */
	private Long coplId;
	
	/**
	 * 科目ID
	 */
	private Long subjId;
	
	/**
	 * 班级ID
	 */
	private Long scclId;
	
	/**
	 * 节次ID
	 */
	private Long coseId;
	
	/**
	 * 老师ID
	 */
	private Long syusId;
	
	/**
	 * 教室ID
	 */
	private Long bsloId;
	
	/**
	 * 课程星期数
	 */
	private Long coplWeekDayNo;
	
	/**
	 * 课程周次
	 */
	private Long coplWeekNo;
	
	/**
	 * 排课计划冲突ID
	 */
	private Long cpcoId;
	
	/**
	 * 学年学期ID
	 */
	@TableField(exist = false)
	private Long tetiId;
	
	/**
	 * 单节课开始时间
	 */
	private Date courBeginTime;
	
	/**
	 * 单节课结束时间
	 */
	private Date courEndTime;
	
	/**
	 * 冲突类型:
	 * teacher-老师分身冲突
	 * classRoom-场地空间占用冲突
	 * teacAndRoom-老师分身冲 and 场地空间占用都冲突
	 */
	private String cpcoConflictType;
	
	/**
	 * 是否冲突:0-不冲突；1-冲突
	 */
	private Integer cpcoIsConflict;
	
	/**
	 * 是否生成课程
	 */
	private Integer cpcoIsGennerCourse;
	
	/**
	 * 是否已调课
	 */
	private Integer cpcoIsChanged;
	
	/**
	 * 备注
	 */
	private String remarks;
	
	/**
	 * 创建时间
	 */
	private Date createTime;
	
	/**
	 * 修改时间
	 */
	private Date modifyTime;
	/**
	 * 默认租户为当前登录人的租户
	 */
	@TableField(exist = false)
	private String tenantId = SysUserUtils.getSysUser().getTenantId();
	
}
